The present invention generally relates to data access and storage, and more specifically, to bandwidth efficient techniques for enabling tagged memories.
In today's environment, general computer systems store data in memory such as random access memory (RAM), and data can also be stored in storage such as hard disk drives and other devices. The memory is used to store instructions and programs that are executed in the computer systems. RAM is a type of memory device that is used most frequently as main memory in computer systems which is able to store large amounts of data in a small area. Cache is used to store information that is frequently accessed and/or most recently accessed to improve processing efficiency and reduce access latency from the central processing unit (CPU) and the secondary storage. The secondary storage devices can be used to store files and data that are infrequently used. The latency between the CPU retrieving data from the secondary storage devices is longer than that of the cache. The RAM, cache, and secondary storage devices makeup the memory system and are configured in a hierarchy to balance the performance, speed, and overhead when accessing data in the different memory locations of the system.